home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Magazin/MacEasy 32
/
Mac Magazin and MacEasy Magazine CD - Issue 32.iso
/
Grafik & Text
/
OzTeX3.0
/
TeX-inputs
/
LaTeX
/
contrib
/
hyperref
/
pdfmark.cfg
< prev
next >
Wrap
Text File
|
1997-03-26
|
10KB
|
321 lines
%%
%% This is file `pdfmark.cfg',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% hyperref.dtx (with options: `pdfmark,outlines')
%%
\def\fileversion{4.21}
\def\filedate{1997/03/12}
\def\docdate {1997/03/12}
\def\hyper@@@anchor#1{%
{\pdfmark[\anchor@spot]{pdfmark=/DEST,View=\pdfView,Dest=#1}}%
}
\def\hyperbaseurl#1{%
\pdfmark{pdfmark=/DOCVIEW,URI=<< /Base (#1) >>}%
}
\def\hyper@anchorstart#1{%
\literalps@out{HyperStart}%
\gdef\hyper@currentanchor{#1}%
\@ActiveAnchortrue
}
\def\hyper@anchorend{%
\pdf@setheight
\literalps@out{HyperAutoEnd HyperAutoVoff}%
\pdfmark{pdfmark=/DEST,View=\pdfView,
Dest=\hyper@currentanchor,
Rect=\pdf@bbox}%
\@ActiveAnchorfalse
}
\def\hyper@linkstart#1{%
\ifHyper@breaklinks\else\mbox\bgroup\fi\bgroup
\colorlink{\LinkColor}%
\def\hyper@hash{}%
\literalps@out{HyperStart}%
\global\edef\hyper@currentanchor{#1}%
}
\def\hyper@linkend{\@ifnextchar[{\hyper@@linkend}{\hyper@@linkend[Normal]}}
\def\hyper@@linkend[#1]{%
\pdf@setheight
\edef\@foo{\csname BorderColor@#1\endcsname}%
\literalps@out{HyperAutoEnd}%
\pdfmark{pdfmark=/ANN,Subtype=/Link,Dest=\hyper@currentanchor,
Color=\@foo,Rect=\pdf@bbox}%
\egroup
\ifHyper@breaklinks\else\egroup\fi
}
\def\hyperimage#1{%
\bgroup
\let\%\@percentchar
\let\#\hyper@hash
\let\~\hyper@tilde
\@URLpdfmark{}{#1}%
\egroup
}
\def\hyper@@link[#1]#2#3#4{%
\ifx\\#2\\\def\hyper@hash{}%
\edef\@foo{\csname BorderColor@#1\endcsname}%
\pdfmark[#4]{Color=\@foo,pdfmark=/ANN,Subtype=/Link,Dest=#3}%
\else
\Externalpdfmark{#2}{#3}{#4}%
\fi
}
\def\pdfmark{\@ifnextchar[{\@pdfmark}{\@pdfmark[]}}
\def\@pdfmark[#1]#2{%
\edef\goforit{\noexpand\pdf@toks={ \the\pdf@defaulttoks}}%
\goforit
\let\pdf@type\relax
\setkeys{PDF}{#2}%
\ifx\pdf@type\relax
\typeout{ERROR: no pdfmark type specified in #2!!}%
\ifx\\#1\\\relax\else\pdf@rect{#1}\fi
\else
\bgroup
\ifx\\#1\\\relax\else
\@ifundefined{\pdf@type color}%
{\def\C@l@r{\LinkColor}}%
{\def\C@l@r{\expandafter\csname\pdf@type color\endcsname}}%
\colorlink{\C@l@r}\pdf@rect{#1}\fi
\literalps@out{[\the\pdf@toks\space \pdf@type\space pdfmark}%
\egroup
\fi
}
\newsavebox{\pdf@box}
\def\pdf@rect#1{%
\leavevmode
\setbox\pdf@box=\hbox{#1}%
\lower\dp\pdf@box\hbox{\literalps@out{HyperStart}}%
\ifHyper@breaklinks#1\else\copy\pdf@box\fi
\raise\ht\pdf@box\hbox{\literalps@out{HyperEnd HyperVoff }}%
\setbox\pdf@box=\hbox{}%
\pdf@addtoks{[\pdf@bbox]}{Rect}%
}
\newtoks\pdf@toks
\newtoks\pdf@defaulttoks
\pdf@defaulttoks={ }%
\def\pdf@addtoks#1#2{%
\toks0={/#2 #1 }%
\edef\goforit{\noexpand\pdf@toks={\the\pdf@toks\space /#2 #1}}%
\goforit
}
\def\PDFdefaults#1{%
\pdf@defaulttoks={#1}%
}
\define@key{PDF}{pdfmark}{\def\pdf@type{#1}}
\define@key{PDF}{Action}{\pdf@addtoks{#1}{Action}}
\define@key{PDF}{Border}{\pdf@addtoks{[#1]}{Border}}
\define@key{PDF}{Color}{\pdf@addtoks{[#1]}{Color}}
\define@key{PDF}{Contents}{\pdf@addtoks{(#1)}{Contents}}
\define@key{PDF}{Count}{\pdf@addtoks{#1}{Count}}
\define@key{PDF}{CropBox}{\pdf@addtoks{[#1]}{CropBox}}
\define@key{PDF}{DOSFile}{\pdf@addtoks{(#1)}{DOSFile}}
\define@key{PDF}{DataSource}{\pdf@addtoks{(#1)}{DataSource}}
\define@key{PDF}{Dest}{\ifx\\#1\\\else\pdf@addtoks{/#1}{Dest}\fi}
\define@key{PDF}{Dir}{\pdf@addtoks{(#1)}{Dir}}
\define@key{PDF}{File}{\pdf@addtoks{(#1)}{File}}
\define@key{PDF}{Flags}{\pdf@addtoks{#1}{Flags}}
\define@key{PDF}{ID}{\pdf@addtoks{[#1]}{ID}}
\define@key{PDF}{MacFile}{\pdf@addtoks{(#1)}{MacFile}}
\define@key{PDF}{ModDate}{\pdf@addtoks{(#1)}{ModDate}}
\define@key{PDF}{Op}{\pdf@addtoks{(#1)}{Op}}
\define@key{PDF}{Open}{\pdf@addtoks{#1}{Open}}
\define@key{PDF}{Page}{\pdf@addtoks{#1}{Page}}
\define@key{PDF}{PageMode}{\pdf@addtoks{#1}{PageMode}}
\define@key{PDF}{Params}{\pdf@addtoks{(#1)}{Params}}
\define@key{PDF}{Rect}{\pdf@addtoks{[#1]}{Rect}}
\define@key{PDF}{SrcPg}{\pdf@addtoks{#1}{SrcPg}}
\define@key{PDF}{Subtype}{\pdf@addtoks{#1}{Subtype}}
\define@key{PDF}{Title}{\pdf@addtoks{(#1)}{Title}}
\define@key{PDF}{Unix}{\pdf@addtoks{(#1)}{Unix}}
\define@key{PDF}{UnixFile}{\pdf@addtoks{(#1)}{UnixFile}}
\define@key{PDF}{View}{\pdf@addtoks{[#1]}{View}}
\define@key{PDF}{WinFile}{\pdf@addtoks{(#1)}{WinFile}}
\define@key{PDF}{Author}{\pdf@addtoks{(#1)}{Author}}
\define@key{PDF}{CreationDate}{\pdf@addtoks{(#1)}{CreationDate}}
\define@key{PDF}{Creator}{\pdf@addtoks{(#1)}{Creator}}
\define@key{PDF}{Producer}{\pdf@addtoks{(#1)}{Producer}}
\define@key{PDF}{Subject}{\pdf@addtoks{(#1)}{Subject}}
\define@key{PDF}{Keywords}{\pdf@addtoks{(#1)}{Keywords}}
\define@key{PDF}{ModDate}{\pdf@addtoks{(#1)}{ModDate}}
\define@key{PDF}{Base}{\pdf@addtoks{(#1)}{Base}}
\define@key{PDF}{URI}{\pdf@addtoks{#1}{URI}}
\ifcase\Hyper@dvidriver
\def\pdfView{/XYZ pdf@hoff pdf@voff null}
\or % dvipsone
\def\pdfview#1{%
\pstVerb{[ /View [ /XYZ gsave revscl currentpoint grestore 20 add exch pop
null exch null] %
/Dest /#1 /DEST pdfmark}
}
\fi
\def\PDFNextPage{\@ifnextchar[{\@PDFNextPage}%
{\@PDFNextPage[]}}
\def\@PDFNextPage[#1]#2{\pdfmark[#2]{#1,Color=.2 .1 .5,
pdfmark=/ANN,Subtype=/Link,Page=/Next}}
\def\PDFPreviousPage{\@ifnextchar[{\@PDFPreviousPage}%
{\@PDFPreviousPage[]}}
\def\@PDFPreviousPage[#1]#2{\pdfmark[#2]{#1,Color=.4 .4 .1,
pdfmark=/ANN,Subtype=/Link,Page=/Prev}}
\def\PDFOpen#1{%
\pdfmark{#1,pdfmark=/DOCVIEW}%
}
\def\PDFPage{\@ifnextchar[{\@PDFPage}{\@PDFPage[]}}
\def\@PDFPage[#1]#2#3{%
\let\pageref\simple@pageref
\pdfmark[#3]{#1,Page=#2,Color=\BorderColor@Page,pdfmark=/ANN,Subtype=/Link}}
\def\simple@pageref#1{%
\expandafter\ifx\csname r@#1\endcsname\relax
0%
\else
\expandafter\expandafter\expandafter
\@secondoffour\csname r@#1\endcsname
\fi}
\def\@URLpdfmark#1#2{%
\pdfmark[#1]{pdfmark=/ANN,Color=\BorderColor@URL,
Action=<< /Subtype /URI /URI (#2) >>,Subtype=/Link}%
}
\def\@Filepdfmark#1#2#3{%
\def\hyper@hash{}%
\pdfmark[#2]{pdfmark=/ANN,Subtype=/Link,
Color=\BorderColor@File,Action=/GoToR,File=#3,Dest=#1}%
}
\def\Externalpdfmark#1#2#3{%
\expandafter\@Externalpdfmark{#2}{#3}#1:::\\
}
\def\@Externalpdfmark#1#2#3:#4:#5:#6\\{%
\def\@pdftempa{#3#6}\def\@pdftempb{file:}%
\ifx\@pdftempa\@pdftempb
\@Filepdfmark{#1}{#2}{#4}%
\else
\def\@pdftempb{file::}%
\ifx\@pdftempa\@pdftempb
\@Filepdfmark{#1}{#2}{{#4:#5}}%
\else
\ifx\\#6\\%
\def\@url{#3#1}
\else
\ifx\\#5\\\def\@url{#3:#4#1}\else\def\@url{#3:#4:#5#1}\fi
\fi
\@URLpdfmark{#2}{\@url}%
\fi
\fi
}
\def\BorderColor@Normal{1 0 0}
\def\BorderColor@URL{0 1 1}
\def\BorderColor@File{0 .5 .5}
\def\BorderColor@Cite{0 1 0}
\def\BorderColor@Page{1 1 0}
\ifHyper@colorlinks
\PDFdefaults{/Border [0 0 0]}
\else
\PDFdefaults{}
\fi
\let\H@old@sect\@sect
\def\@sect#1#2#3#4#5#6[#7]#8{%
\H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
\ifx\\#1\\\else
\ifnum#2<\c@secnumdepth
\edef\@thishlabel{\csname theH#1\endcsname}%
\@writetorep{#7}{#1.\@thishlabel}{#2}\fi
\fi
}
\let\H@old@part\@part
\def\@part[#1]#2{%
\H@old@part[{#1}]{#2}%
\@writetorep{#1}{part.\theHpart}{-1}%
}
\let\H@old@chapter\@chapter
\def\@chapter[#1]#2{%
\H@old@chapter[{#1}]{#2}%
\@writetorep{#1}{chapter.\theHchapter}{0}%
}
\expandafter\def\csname Parent-2\endcsname{}
\expandafter\def\csname Parent-1\endcsname{}
\expandafter\def\csname Parent0\endcsname{}
\expandafter\def\csname Parent1\endcsname{}
\newwrite\@outlinefile
\def\@writetorep#1#2#3{%
\@tempcnta#3
\expandafter\edef\csname Parent#3\endcsname{#2}%
\advance\@tempcnta by -1
\ifx\ReadBookmarks\relax\else
\protected@write\@outlinefile%
{\def\TeX{TeX}%
\def\LaTeX{LaTeX}%
\let\label\@gobble
\let\index\@gobble
\let\glossary\@gobble}%
{%
\protect\BOOKMARK{#2}{#1}{\csname Parent\the\@tempcnta\endcsname}}%
\fi
}
\AtBeginDocument{\ReadBookmarks}
\def\ReadBookmarks{%
\typeout{Establishing bookmarks from \jobname.out}%
\def\BOOKMARK ##1##2##3{\calc@bm@number{##3}}%
\InputIfFileExists{\jobname.out}{}{}%
\def\BOOKMARK ##1##2##3{%
\pdfmark{pdfmark=/OUT,Count=\check@bm@number{##1},
Dest=##1,Title={##2}}%
}
\InputIfFileExists{\jobname.out}{}{}%
\immediate\openout\@outlinefile=\jobname.out
}
\def\check@bm@number#1{\expandafter \ifx\csname#1\endcsname \relax 0%
\else \csname#1\endcsname \fi}
\def\calc@bm@number#1{\@tempcnta=\check@bm@number{#1}\relax
\advance\@tempcnta by1
\expandafter\xdef\csname#1\endcsname{\the\@tempcnta}}
\def\literalps@out#1{\special{ps:SDict begin #1 end}}%
\begingroup
\catcode`P=12
\catcode`T=12
\lowercase{\endgroup
\gdef\rem@ptetc#1.#2PT#3!{#1\ifnum#2>\z@.#2\fi}}
\def\strip@pt@and@otherjunk#1{\expandafter\rem@ptetc\the#1!}
\def\pdf@setheight{\literalps@out{%
\strip@pt@and@otherjunk\baselineskip
\space 2 sub dup
/HyperBasePt exch def
PDFToDvips /HyperBaseDvips exch def
}%
}
\special{papersize=\special@paper}
\special{!
/DvipsToPDF { 72.27 mul Resolution div } def
/PDFToDvips { 72.27 div Resolution mul } def
/HyperBorder { 1 PDFToDvips } def
/HyperVoff {
currentpoint exch pop vsize 72 sub exch DvipsToPDF sub /pdf@voff exch def
} def
/HyperAutoVoff {
currentpoint exch pop
vsize 72 sub exch DvipsToPDF
HyperBasePt sub % baseline skip
sub /pdf@voff exch def
} def
/HyperStart {
currentpoint
HyperBorder add /pdf@lly exch def
dup DvipsToPDF /pdf@hoff exch def
HyperBorder sub /pdf@llx exch def
} def
/HyperEnd {
currentpoint
HyperBorder sub /pdf@ury exch def
HyperBorder add /pdf@urx exch def
} def
/HyperAutoEnd {
currentpoint
HyperBaseDvips sub /pdf@ury exch def
/pdf@urx exch def
} def
systemdict
/pdfmark known not
{userdict /pdfmark systemdict /cleartomark get put} if
}
\endinput
%%
%% End of file `pdfmark.cfg'.